Alors que les collections de base comme les tableaux ou les tranches sont limitées à stocker des éléments du même type de données, structures (structs) nous permettent de regrouper des types différents dans une seule unité. Cela est essentiel pour l'exploration martienne, où les télémesures impliquent des données mixtes comme les noms (chaîne de caractères) et les coordonnées (float64).
1. Regroupement sémantique vs. uniformité
Contrairement à un tableau de flottants qui ne vous indique que "combien", une structure fournit un conteneur étiqueté. Définition : Alors que les collections sont de même type, les structures vous permettent de regrouper des éléments disparates. Cela empêche le "bouillabaisse de variables" en rassemblant les données liées dans des objets nommés.
2. Atomicité dans les opérations
En regroupant les variables, nous obtenons une atomicité. Les fonctions telles que func Step(a, b Universe) ou func (u Universe) Next(x, y int) bool peuvent manipuler des environnements entiers plutôt que de poursuivre des primitives détachées. Pour des tâches ponctuelles, structures anonymes (comme dans l'Exemple 21.1) offrent une organisation immédiate sans définitions de type formelles.